Data processing systems may comprise a host computing device or system and a network interface device. The network interface device is configured to provide an interface to a network to allow the host computing device or system to be able to receive data from other host computing devices via the network. The network interface device may be integrated with or separate from the host computing device.
The data which is received may be in the form of data packets. Protocol processing is generally performed on the data packets in order for the host computing device to consume the data in the data packets. The received data may be consumed by an application or application thread which is provided at a user level.